package com.tedu.day02.test;

/**
 * 匿名内部类：需要了解抽象类与接口定义和使用----拓展：表达式【JavaAPI】
 * 抽象类/接口  引用=new  抽象类/接口(){}；
 * 特点：对象只需要创建一次时候
 */
public class 匿名内部类 {

    public static void main(String[] args) {
        // 创建接口   实现类USB  实现  继承   USB接口 ----多态性【造型】
//                USB usb=new Jack();
//                usb.read();usb.writer();
        // 针对：子实现类有多个都需要实现
        // *针对：实现一次，创建一次接口对象----匿名内部类创建：接口、抽象类
        USB usb=new  USB(){

            public void writer() {
                System.out.println("写");
            }

            public void read() {
                System.out.println("读");
            }
        };
        usb.writer();
        //作业2：抽象类使用匿名内部类方法创建出来，并输出跑、睡的方法
        Animal animal=new Animal() {

            public void run() {
                System.out.println("跑");
            }

            public void sleep() {
                System.out.println("睡");
            }
        };
    }
}
//创建接口    USB   功能：  读  写
interface USB{
    public abstract void writer();
    public abstract void read();
}
//以往创建接口对象：先创建实现类    关键字：implements
class Jack implements USB{
    public void writer() {
        System.out.println("写");
    }

    public void read() {
        System.out.println("读");
    }
}
//创建抽象类  Animal  功能： 跑  睡
abstract class Animal{
    public abstract void run();
    public abstract void sleep();
}